/// 1. rust语言将错误分为两个类别：可恢复错误和不可恢复错误
/// 1.1 可恢复错误通常代表向用户报告错误和充实操作是否合理的情况，例如未找到文件。rust中使用Result<T, E>来实现
/// 1.2 不可恢复错误是bug的同义词，如果尝试访问超过数组结尾的位置，rust中通过panic! 来实现
/// 2. panic!
/// 3. 使用BACKTRACE = 1
/// 4. Result<T, E>
/// 5. 简写
use std::fs::File;
fn main() {
    // panic!
    // panic!("TEST_ERROR 😀 😀 😀 😀 😀 😀 😀 😀 😀 😀 😀 😀 😀");
    // let f = File::open("hello.txt");
    // let r = match f {
    //     Ok(file) => {file}
    //     Err(error) => {panic!("{}",error)}
    // };
    //
    // 简写的方式1
    // let f = File::open("README.md").unwrap();
    // 简写的方式2
    let f = File::open("README.md").expect("文件找不到，请检查文件");

}
